package deom1;

import java.util.Arrays;


//class People {
//    int month;
//
//    @Override
//    protected Object clone() throws CloneNotSupportedException {
//        return super.clone();
//    }
//}
class Solution {
    public int halveArray(int[] nums) {

        int time = 0;
        double sum = 0.0;

        for(int x : nums)
            sum += x;

        double sum1 = sum / 2.0;

        while(sum > sum1) {
            sum = 0;
            Arrays.sort(nums);
            nums[nums.length - 1] /= 2.0;
            for(int x : nums)
                sum += x;
            time++;
        }
        return time;
    }
}
public class Test {

    public static void main(String[] args) {
        int[] ints = {3,8,20};
        double[] doubles = new double[ints.length];
        for(int i = 0 ; i <ints.length;i++) {
            doubles[i] = ints[i];
        }
        Solution solution = new Solution();
        int count = solution.halveArray(ints);
        System.out.println(count);
    }



    public static void main10(String[] args) {
        int[] ints1 = {1,2,3,4, 5};
        int[] ints2 = {6,7,8,9,10};
        int int1 = ints1.length;
        ints1 = Arrays.copyOf(ints1,ints1.length+ints2.length);
        for(int i = 0;i < ints2.length;i++) {
            ints1[int1++] = ints2[i];
        }
        System.out.println(Arrays.toString(ints1));
    }
    public static void main8(String[] args) {
        String s1 ="d f g h f";
        String[] s = s1.split(" ");
        int c1 = s.length;
        int c2 = s[3].length();
    }
    public static void main7(String[] args) {
        String string = "abcabababcdefg";
        //把字符 'a' 全部替换成字符 'h'
        String s1 = string.replace('a','h');

        //把第一个字符c串 "a" 替换成字符串 "h"
        String s2 = string.replaceFirst("a","h");

        //把字符串 “a” 全部替换成字符串 "h"
        String s3 = string.replace("a","h");

    }
    public static void main6(String[] args) {
        //数字转换字符串
        String string = String.valueOf(12345);

        //字母大小写转换
        String s1 = "aBcdEFg";
        String s2 = s1.toUpperCase(); //转大写
        String s3 = s1.toLowerCase(); //转小写

        //字符串转数组
        String s4 = "Hello World!";
        char[] chars = s4.toCharArray();
        for(char s : chars)
            System.out.print(s);

        //数组转字符串
        char[] chars1 = {'r','t','d','s','d'};
        String s5 = new String(chars1);

        //转为格式化
        String s6 = String.format("%d-%d-%d",2024,11,3);
        System.out.println(s6);
    }

    public static void main3(String[] args) {
        String str = "abcbcyabcdabcfgh";

        //返回 2 下标上的字符
        System.out.println(str.charAt(2));

        //返回 y 第一次出现的位置
        System.out.println(str.indexOf('y'));

        //从第 3 位置开始，返回 y 第一次出现的位置
        System.out.println(str.indexOf('y',3));

        //返回字符串 "abcd" 第一次出现的位置
        System.out.println(str.indexOf("abcd"));

        //从第 3 位置开始，返回 "abcd" 第一次出现的位置
        System.out.println(str.indexOf("abcd",3));

        //从后往前找，返回 y 第一次出现的位置
        System.out.println(str.lastIndexOf('y'));

        //第 3 位置开始.从后往前找，返回 y 第一次出现的位置
        System.out.println(str.lastIndexOf('y',3));

        //从后往前找，返回 "abcd" 第一次出现的位置
        System.out.println(str.lastIndexOf("abcd"));

        //第 3 位置开始.从后往前找，返回 "abcd" 第一次出现的位置
        System.out.println(str.lastIndexOf("abcd",3));
    }
    public static void main2(String[] args) {
        String s1 = "Hello";
        String s2 = "heLLo";

        System.out.println(s1.compareTo(s2));  //返回值小于 0
        System.out.println(s2.compareTo(s1));  //返回值大于 0

        //忽略大小写比较
        System.out.println(s1.compareToIgnoreCase(s2));  //返回值等于 0
    }
    public static void main1(String[] args) {
        //常量字符串构造
        String s1 = "Hello";

        //new 对象创造
        String s2 = new String("Hello");

        //通过字符串数组创建
        char[] chars = {'H','e','l','l','o'};

        System.out.println("Hello".length());
    }
}
